1. Field of the Invention
The present invention relates to a method for designing a semiconductor integrated circuit layout, capable of reducing the processing time for optical proximity effect correction.
2. Background Art
Since its invention, the semiconductor integrated circuit (IC) has been continually improved by technological advances. For instance, the circuit has become more and more miniaturized to achieve enhanced performance and functions, as well as reduced cost. Miniaturization requires an improvement on the lithographic technique for forming a micropattern. According to the Rayleigh criterion, a lithographic resolution, or a resolution pitch (RP), is expressed by the following equation:RP=k1×λ/NA, where k1 is a constant of proportionality, λ is the wavelength of the exposure light, and NA is the numerical aperture of the lens.
In recent years, efforts have been made to reduce the k1 factor by use of a super resolution technique, etc. in order to meet the demand for miniaturized design. However, although reducing the k1 factor results in an increase in the resolution, the following problems arise: (1) an increase in the two-dimensional distortion of the pattern (that is, a degradation in the fidelity); and (2) a reduction in the process margins.
A technique called optical proximity effect correction (OPC) has been used to overcome these problems. There are two major types of OPC: (1) rule-based OPC and (2) model-based OPC. In rule-based OPC, each pattern is corrected according to a predetermined rule (regarding the pattern width, pitch, etc.) In model-based OPC, on the other hand, a simulation is performed to predict the accuracy and fidelity of the patterns to be formed and correct them. In recent years, it has become difficult to describe, or correct, patterns by means of rule-based OPC, since their distortion has been increased as a result of miniaturization, which leads to complicated OPC specifications. Therefore, model-based OPC has become commonly used for pattern correction. However, since the model-based OPC employs simulation, it requires a longer processing time than the rule-based OPC.
The miniaturization of semiconductor integrated circuits has also lead to an increase in the circuit design scale and integration density, dramatically increasing the number of figures or symbols included in a chip pattern. This has also contributed greatly to an increase in the OPC processing time, since the OPC processing time is generally proportional to the number of figures processed.
In pattern layout design, blank areas that have not been filled with intended patterns are filled with dummy patterns, which have no circuit functions. These dummy patterns are provided to improve the manufacturing process and serve the following purposes: (1) improve lithographic margins; (2) prevent the loading effect in the etching process; and (3) improve the flatness in the CMP process.
The underlying dummy pattern for a field, gate pattern, etc. is referred to as a “fill cell” or “filler cell” and usually stored in the cell library. Various methods for arranging fill cells have been proposed (see, e.g., Japanese Patent Laid-open No. 2004-288685). Since basic logic cells are arranged according to how they are connected to one another, the blank areas formed as a result of such arrangement are irregular in size and position. This means that different numbers and types of fill cells may be required to fill different blank areas. That is, the fill cell arrangement varies from one blank area to another, and, furthermore, fill cells are arranged irregularly within each blank area. When fill cells are arranged irregularly, it is difficult to establish pseudo-hierarchical cells, which are used to speed up the OPC processing, as described below.
A pseudo-hierarchical cell is an imaginary cell made up of a plurality of actual cells or cell groups (or pseudo-hierarchical cells) having the same cell configuration. Pseudo-hierarchical cells and actual cells may form a hierarchy. FIGS. 29 to 31 show exemplary layouts, and FIG. 32 shows a hierarchical structure formed based on these layouts. The cell C shown in FIG. 31 is made up of cells A and B such as those shown in FIGS. 29 and 30. For example, dimensions of the cell C are checked using the following sequential steps: checking the widths (or dimensions) of the cells A and B on the left-hand side of FIG. 31; checking the width (or dimensions) of the overlap 103 between these cells A and B; and checking the width (or dimensions) of the overlap 104 between the cells A and B on the right-hand side of FIG. 31. It should be noted that the widths of the cells A and B on the right-hand side are not checked, since the cells A and B on the left-hand side have been checked.
On the other hand, FIG. 33 shows a layout in which actual cells are grouped into pseudo-hierarchical cells, and FIG. 34 shows a hierarchical structure formed based on this layout. Specifically, referring to FIG. 33, since the cells A and B on the right- and left-hand sides are arranged in exactly the same way, they are respectively grouped together to generate pseudo-hierarchical cells V. In this case, dimensions of the cell C are checked using the following sequential steps: checking the widths (or dimensions) of the cells A and B in the cell V on the left-hand side of FIG. 33; and checking the width (or dimensions) of the overlap between these cells A and B. It should be noted that the dimensions of the cell V on the right-hand side are not checked, since the cell V on the left-hand side have been checked.
Thus, when no pseudo-hierarchical cells are generated, 4 width check (or dimensional check) operations must be performed. With pseudo-hierarchical cells, on the other hand, only 3 width check (or dimensional check) operations need be performed, thus speeding up the processing. It should be noted that the time required to generate the pseudo-hierarchical cells must be shorter than that required to complete a single width check operation. In the case of a general large-scale layout, a width check operation takes a sufficiently longer time to complete, since it requires graphics processing.
The cells A and B within each cell V may be expanded, or broken down, when the pseudo-hierarchical cells are generated before checking the width of each cell. This eliminates the need for checking the width of each cell within each cell V, separately, and hence there is no need for checking the width of the overlap between the cells A and B, thus further speeding up the processing. FIG. 35 shows the hierarchical structure in such a case. Thus, generation of pseudo-hierarchical cells and expansion of cells allow reducing the numbers of cell figures and areas to be processed, leading to reduced processing time for optical proximity effect correction.
There will now be described a conventional method for designing a semiconductor integrated circuit layout. FIG. 36 shows a flowchart illustrating the conventional method for designing a semiconductor integrated circuit layout. First, at step S1, basic logic cells 100 are arranged based on cell library information and circuit information corresponding to a net list of the semiconductor integrated circuit, as shown in FIG. 37. It should be noted that FIG. 37 only shows the outline of each cell and does not show its inside layout.
Then, at step S2, wiring is arranged between the arranged basic logic cells based on circuit connection information included in data for automatic arrangement/wiring. Then, at step S3, fill cells 101 and 102 are arranged in the blank areas, in which no basic logic cells are arranged, as shown in FIG. 38. Then, the layout is checked at step S4, and it is determined at step S5 whether there is an error in the layout. If no, optical proximity effect correction is performed at step S6. If yes, then processing returns to step S1 at which basic logic cells are arranged.
The following is a description of a conventional method for arranging fill cells in each blank area. For example, the blank areas are filled with fill cells sequentially from the leftmost blank area to the rightmost blank area regardless of the size and shape of each blank area. Further, within each blank area, fill cells are arranged from left to right. Specifically, first, large fill cells (such as the fill cell 101 in FIG. 38) are arranged in each blank area. (These fill cells have a size equal to the largest size available that fits in the blank area.) Then, if there remains any unfilled space in this blank area, smaller fill cells (such as the fill cell 102 in FIG. 38) are arranged in this unfilled space. (These smaller fill cells have a size equal to the largest size available that fits in the space.) This is repeated until the entire blank area is filled with fill cells. The above processing is repeated for all blank areas. However, this conventional method has a problem in that in the resultant layout, fill cells of different sizes are arranged at random, as shown in FIG. 38. Specifically, some pseudo-hierarchical cells may be able to be generated in the X-direction. In the Y-direction, however, it is impossible to generate any pseudo-hierarchical cell, since fill cells of different sizes are arranged irregularly. Therefore, the conventional method cannot properly establish a pseudo-hierarchy, resulting in an increase in the processing time for optical proximity effect correction.